select 'db1' prov,decode(trim(pe.PARTITA_IVA),null,pe.CODICE_FISCALE,trim(pe.PARTITA_IVA)) codice_FISCALE_piva,
concat('IT018E',concat(substr(concat('000000000',fo.codice_allacciamento),-7,7),substr(fo.progressivo_utenza,-1,1))) Pod,
imponibile_iva
 from ut_asm.tmpmark@asmdw tm,db1.contratti_aggregazioni ca,persone pe,contratti co,forniture fo
where progressivo_voce ='C-MOR'
and ca.codice_utente=tm.codice_utente
and ca.codice_gestione='ASM'
and pe.codice_persona=ca.codice_persona_utilizzatore
and co.codice_gestione ='ASM'
and co.CODICE_SERVIZIO='E'
and fo.codice_gestione ='ASM'
and fo.CODICE_SERVIZIO='E'
and ca.codice_utente=co.codice_utente
and fo.codice_contratto=co.codice_contratto
and codice_ruolo_fatturato between  ^ DB1 Codice Ruolo da nn;N;NUMERICO^^ and ^ DB1 Codice Ruolo A nn;N;NUMERICO^^
and anno_esercizio = ^anno esercizio db1 aaaa;N;NUMERICO^^
union 
select 'db5' prov,decode(trim(pe.PARTITA_IVA),null,pe.CODICE_FISCALE,trim(pe.PARTITA_IVA)) codice,
concat('IT018E',concat(substr(concat('000000000',fo.codice_allacciamento),-7,7),substr(fo.progressivo_utenza,-1,1))) Pod,
imponibile_iva
 from ut_ue.tmpmark@asmdw tm,db5.contratti_aggregazioni ca,db5.persone pe,db5.contratti co,db5.forniture fo
where progressivo_voce ='C-MOR'
and ca.codice_utente=tm.codice_utente
and ca.codice_gestione='UNRG'
and pe.codice_persona=ca.codice_persona_utilizzatore
and co.codice_gestione ='UNRG'
and co.CODICE_SERVIZIO='E'
and fo.codice_gestione ='UNRG'
and fo.CODICE_SERVIZIO='E'
and ca.codice_utente=co.codice_utente
and fo.codice_contratto=co.codice_contratto
and codice_ruolo_fatturato between  ^ DB5 Codice Ruolo da nn;N;NUMERICO^^ and ^ DB5 Codice Ruolo A nn;N;NUMERICO^^
and anno_esercizio = ^anno esercizio d5 aaaa;N;NUMERICO^^